#include <stdio.h>

#define N 1024
int main()
{
    FILE *pf = fopen("a.txt","w+");
    if(pf == NULL)
    {
            exit(-1);
    }
// 1.   fputs("abc\n1234567",pf);
    fputs("abc1234567",pf);

    rewind(pf);
    char buf[N];
// 1.   fgets(buf,N-1,pf);
// 2.   fgets(buf,N-1,pf);
// 3   fgets(buf,4,pf);
    // N-1 个字符前遇到了 \n EOF
    // 1. abcd\n + \0
    // 2. abcd1234567
    // 还没有遇到 \n EOF 读取的数据到了上限
    // 3. abc + \0
    // 遇到 \n EOF 的时候返回非空，在 EOF 以后再去读，NULL
//    printf("%p\n",fgets(buf,N-1,pf));
//    printf("%p\n",fgets(buf,N-1,pf));
//    printf("%p\n",fgets(buf,N-1,pf));
    while(fgets(buf,N-1,pf)){
        printf("%s",buf);
    }
    puts(buf);

    fclose(pf);
    return 0;
}
